
Si consideri il file CSV disponibile all’indirizzo:

[https://pastebin.com/raw/Fv6Zy7Tj](https://pastebin.com/raw/Fv6Zy7Tj)


### 1. Lettura del CSV e normalizzazione dei dati (MAX 5 punti)
Scrivere una funzione che legga il contenuto del file CSV e restituisca una lista di dizionari. Ogni dizionario deve rappresentare un piatto e contenere le seguenti chiavi:
- ID Piatto: intero
- Ingredienti Primari: lista di stringhe (rimuovere le virgolette e gli spazi extra)
- Ingredienti Secondari: lista di stringhe (rimuovere le virgolette e gli spazi extra)
- Prezzo (€): float
- Tempo di Preparazione (minuti): intero
- Contenuto Calorico (kcal): intero


### 2. 
Scrivere una funzione che, presa la lista di dizionari costruita al punto 1, calcoli:
- Il contenuto calorico totale del menù (somma del contenuto calorico di tutti i piatti).
- **La media del contenuto calorico** del menù (media dei contenuti calorici dei singoli piatti).

La funzione dovrà restituire una tupla nel formato:
```python
(totale_calorico, media_calorica)

### 3. 
Scrivere una funzione che, presa la lista di dizionari costruita al punto 1, un **prezzo massimo** e una **categoria** (ad esempio "Antipasti", "Primi", "Secondi"), restituisca una lista dei piatti che appartengono alla categoria specificata e hanno un prezzo inferiore o uguale al prezzo massimo. La lista deve contenere solo il **Nome Piatto** e il **Prezzo** di ciascun piatto, come tuple.

La funzione dovrà restituire una lista di tuple nel formato:
[("Piatto1", prezzo1), ("Piatto2", prezzo2), ...]

### 4. Filtrare piatti in base ai giorni di disponibilità (MAX 7 punti)
Scrivere una funzione che, presa la lista di dizionari costruita al punto 1, un **giorno della settimana** (ad esempio "Lunedì"), restituisca una lista di piatti che sono **disponibili in quel giorno**. La lista dovrà contenere solo il **Nome Piatto** e il **Prezzo (€)**. La funzione dovrà restituire una lista di tuple nel formato:
[("Piatto1", prezzo1), ("Piatto2", prezzo2), ...]

### 5. Funzione di salvataggio dei piatti filtrati (MAX 6 punti)
Scrivere una funzione che, presa in input la lista filtrata di piatti (ad esempio quella restituita dalla funzione al punto 4) e un **nome di file**, salvi i dati su tale file, riga per riga, nel seguente formato: nome_piatto - prezzo; Dove ogni riga contiene il nome del piatto e il prezzo separati da un trattino e seguiti da un punto e virgola alla fine.

Assicurarsi che i dati vengano scritti correttamente nel file.





-
### Buona fortuna!